1. Field of the Invention
The present invention relates to a system and method for improved caching of data, and more particularly, to a system and method for improved caching of data for mobile devices.
2. Description of Related Art
Networking technology has developed a large network of networks, referred to as the Internet, which interconnects millions of computers around the world. The Internet allows the transfer of data between any number of computer systems connected to the Internet using the Transmission Control Protocol/Internet Protocol (TCP/IP). Computers responding to service requests from other computers, via the Internet, are commonly referred to as servers, and computers that initiate requests for service from a server are referred to as clients.
The Internet has become very popular in part due to the World Wide Web (WWW), which is a network of links to hypertext documents operating within the Internet. These hypertext documents are referred to as Web documents, Web pages, or hypertext documents. Web documents are embedded with directly accessible connections or links to other documents that create a non-linear way of reading the document. The links are embedded in Web documents as a phrase of text or an image that can be selected and activated by a computer user. Information about the Web documents are controlled and provided by Web servers. At the user""s end, a Web client takes the user""s requests and passes them on to the Web server.
The Web documents are written with a high level programming language referred to as the Hypertext Markup Language (HTML). Commands of the HTML, hereinafter referred to as tags, provide a variety of functions including, but not limited to, defining special format and layout information in a Web document, embedding images and sound in a Web document, and embedding links to other Web documents.
In general, each Web document is given a xe2x80x9cUniform Resource Locator (URL) which is essentially the address path identifying the server which hosts the desired document plus the location of the document on the server. Using a browser software, an end-user can send a request from a client computer to access a document stored at a particular URL on a server. One popular browser is Netscape Navigator. xe2x80x9cNetscape Navigatorxe2x80x9d is a trademark of the Netscape Communications Corporation. When the server receives the user""s request, it sends the requested HTML Web document to the client where the document can be displayed. The communications protocol used in making such a request and in transferring Web documents is the xe2x80x9cHypertext Transfer Protocolxe2x80x9d (HTTP).
The Web document is typically displayed to an end-user of a display terminal having dimensions of 15 inches or more. Currently, many small screen devices such as mobile devices including cell phones, personal digital assistant (PDA)s, etc. now have Internet access. However, most Web sites as they currently exist are formatted only for large format personal computer (xe2x80x9cPCxe2x80x9d) browsers. The wealth of information that is readily available on large format PCs is therefore not currently accessible to mobile users.
Small screen devices typically have small displays, for example 6 lines by 20 characters. The small displays limit the amount of information that can be presented at one time. In addition, small screen devices have limited bandwidth, generally less than 9600 baud. Transmissions must be kept to a minimum number of characters. The data buffer size of the small screen devices is typically limited to some small multiple of the number of characters that appear on the screen. Thus, most Web documents are too large to be downloaded to small screen devices.
Another problem encountered by small screen devices is that there is no standard markup language used by these devices. Japanese devices use a markup language that is incompatible with the full HTML used on the WWW. For example, the J-Phone Corporation of Japan uses Mobile Markup Language (xe2x80x9cMMLxe2x80x9d). The NTT (Nippon Telephone and Telegraph) DoCoMo uses Compact HTML (xe2x80x9cCHTMLxe2x80x9d), and DDI, IDO and Tu-Ka Corporations of Japan use Hand-held Device Markup Language (xe2x80x9cHDMLxe2x80x9d). Most European and American devices use a markup language that is incompatible with HTML called Wireless Application Protocol/Wireless Markup Language (xe2x80x9cWAP/WMLxe2x80x9d) or HDML.
The different markup languages limit Internet access. Web sites that are accessible to small screen device must be compatible with the particular markup language used by the device. One prior art attempt to provide compatible sites requires human specialists to manually create and update web-sites for small screen mobile Internet devices. For example, in Japan there are a small number of i-mode-only sites for the NTT DoCoMo cell phones. The number of i-mode sites numbers in the thousands rather than the millions of sites available on the Internet as a whole. The sites are independently developed by hand and presented as i-mode-only content. For U.S. or European phones, there is a number of WML wireless Web sites, although again the content is limited and hand generated. To make an HTML Web site accessible to different types of mobile Internet devices therefore requires separate teams to create and maintain content essentially similar to the master web page but in the different markup languages.
Palm Pilot devices use a technique called xe2x80x9cWeb clippingxe2x80x9d to provide compatible Web content. In this technique, content, such as forms, is removed if not deemed appropriate for a mobile device. There are many Web clipping applications that permit access to specific information or Web sites on the Internet. However, this method is disadvantageous not only because displayed content is limited, but because the determination of which content is appropriate for clipping can result in data of interest to the user being deleted from the Web site.
The Xift Corporation offers a prxc3xa9cis engine for WML devices. This prxc3xa9cis engine is used to summarize contents of a Web site for display on a mobile Internet device. However, the Xift prxc3xa9cis engine handles only the English language and WML markup language. Oracle""s Portal-to-Go provides content to mobile devices, but it is a toolkit for software developers to connect database driven Web pages to mobile devices using a particular markup language.
Pixo Corporation produces an in-phone micro browser that is located at the client that handles both HTML and WML. This micro-browser downloads large amounts of data from a Web site. The micro browser cannot use most of this downloaded data. The micro browser located at the client causes slow and bulky data transmission. Moreover, each user would have to purchase a special mobile device having the in-phone micro browser in order to take advantage of this system.
Still another problem encountered by small screen devices is the long delay in accessing Web data. In a conventional networking environment using large screen devices, users tend to view Web pages outside of their local network. Thus, Web browsers tend to reference remote pages more frequently than local pages. Because browsing produces a different locality of reference than other applications, the techniques Web browsers use to optimize performance differ from other applications. In particular, neither Web browsers nor Web servers are optimized for physical locality.
Like other applications, Web browsers use a cache to improve document access. Web browsers place a copy of each item it retrieves in a cache on a local hard disk. When a user requests data, the Web browser checks the disk cache before retrieving a fresh copy of the requested data. If the cache contains the item, the Web browser obtains the copy from the cache and the Web browser only contacts the origin server (i.e., the server that owns the data) if the data cannot be found in the cache. Keeping items in a cache can improve performance dramatically because a browser can read data from a disk without waiting for network delays.
Despite the large improvements in speed in retrieving data, today""s network architecture is not equipped to avoid wasteful duplication and processing associated with delivery of multimedia to small screen devices, such as mobile Internet devices. Previously, the problem of load balancing (i.e., the use of processor resources in the retrieval and delivery of data to users) had been to route a request for the retrieval of data to a server with the lightest load, with no knowledge as to whether the requested data already exists in cache on another server. The result is that more than one server has the same cached data.
It would therefore be an advantage to provide a method and system for retrieval of cached data to be displayed on small screen devices in an efficient manner.
A method and system are provided for retrieving a Web page in a multiple cache networking system. Data requested to be cached by browsers is cached among a plurality of processors in a multiple cache networking system. A request for cached data is received from a browser. A determination is made as to which of the plurality of processors are operative. A load level of each of the operative processors is then determined. Each of the operative processors is queried to locate the requested cached data. An address of the operative processor having the requested cached data is outputted.